//
//  UIImage+Extension.h
//  Tool
//
//  Created by Mr.Zhang on 2018/8/31.
//  Copyright © 2018年 Starunion. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface UIImage (Extension)


/**
 *  根据CIImage生成指定大小的w二维码图片
 *
 *  @param str CIImage
 *  @param size  图片宽度
 */
+ (UIImage *)createNonInterpolatedUIImageWithString:(NSString *)str withSize:(CGFloat) size;

+ (UIImage *) resizableImageWithName:(NSString *)imageName;

/**
 *  生成一张高斯模糊的图片
 *
 *  @param image 原图
 *  @param blur  模糊程度 (0~1)
 *
 *  @return 高斯模糊图片
 */
+ (UIImage *)blurImage:(UIImage *)image blur:(CGFloat)blur;
+(UIImage*) createImageWithColor:(UIColor*) color;
/**
 *  根据颜色生成一张图片
 *
 *  @param color 颜色
 *  @param size  图片大小
 *
 *  @return 图片
 */
+ (UIImage *)imageWithColor:(UIColor *)color size:(CGSize)size;

/**
 *  生成圆角的图片
 *
 *  @param originImage 原始图片
 *  @param borderColor 边框原色
 *  @param borderWidth 边框宽度
 *
 *  @return 圆形图片
 */
+ (UIImage *)circleImage:(UIImage *)originImage borderColor:(UIColor *)borderColor borderWidth:(CGFloat)borderWidth;


/**
 压缩图片
 
 @param scImg     图片
 @param limitSize 大小
 
 @return  压缩到指定大小
 */
+(UIImage *)thumbImageWithImage:(UIImage *)scImg limitSize:(CGSize)limitSize;

/**
 剪切图片
 
 @param image  图片
 @param width  宽
 @param height 高
 
 @return 剪切到指定大小
 */
+ (UIImage*)resizeImage:(UIImage*)image withWidth:(CGFloat)width withHeight:(CGFloat)height;


/**
 生成一张灰色照片(黑白照片)
 
 @param sourceImage 照片源
 @return 返回灰色照片
 */
+(UIImage *)grayImage:(UIImage *)sourceImage;


/**
 对图片进行处理
 
 @param anImage 照片源
 @param type 转换类型
 @return 转换后的图片
 */
+(UIImage*) grayscale:(UIImage*)anImage type:(char)type;

/**
 开播裁剪图片
 */
+ (UIImage *)rectImage:(UIImage *)image;


/**
 合成带背景色的占位图 （在列表上使用会影响一定的性能）
 
 @param size             当前Viewsize
 @param backgroundColor  占位图背景色
 @return return          占位图
 */
+ (UIImage *)placeholderImageWithSize:(CGSize)size backgroundColor:(UIColor *)backgroundColor;


@end
